import Qs from 'querystring'
import {message} from 'antd'
import axios from 'axios'

//进行axios的模块化处理
import login from './login'
import signin from './signin'
import role from './role'
import user from './user'
import weather from './weather'
import category from './category'
import article from './article'

//设置基本url
// axios.defaults.baseURL = 'http://jinxinapp.cn';
axios.defaults.baseURL = 'http://localhost:5000';
axios.defaults.timeout = 5000;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

axios.defaults.transformRequest = [function (data) {
    // 对 data 进行任意转换处理
    //如果数据在前端是进行FormData对象形式的处理则不需要qs序列化
    // if (data instanceof FormData) {
    //     return data
    // } else {
        return Qs.stringify(data);
    // }
}]

// 添加请求拦截器
// eslint-disable-next-line no-unused-vars
axios.interceptors.request.use(function (config) {
     // 在发送请求之前做些什么
     message.loading({
        content:"请求中",
        key:"loading"
     })
    return config;
}, function (error) {
    message.destroy("loading")
    message.error("请求失败");
    return Promise.reject(error);
});

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    message.destroy("loading")
    return response;
  }, function (error) {
    // 对响应错误做点什么
    message.destroy("loading")
    message.error("响应失败");
    return Promise.reject(error);
  });

const api = {
    login,
    signin,
    role,
    user,
    weather,
    category,
    article
}

export default api